<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <ul class="list">
        <li>01</li>
        <li>02</li>
        <li>03</li>
        <li>04</li>
        <li>05</li>
        <li>06</li>
    </ul>
</body>
<script>
    // 扩展运算符  ...  常用展开数组和对象
    // 展开数组 => 逗号分隔的参数序列
    // 展开对象 => 逗号分隔的键值对序列

    // (对象的扩展运算符（...）用于取出参数对象的所有可遍历属性，拷贝到当前或新对象之中。)
    // 扩展运算符在对象中应用:  逗号分隔的键值对序列,只能放到新的对象中


    // var obj = { a: 1, b: 2, c: 3, d: 4 };
    // ... obj => a: 1, b: 2, c: 3, d: 4

    // 对象的深复制(浅拷贝);
    /*  var obj = {
         a: 1,
         b: 2,
         c: 3,
         d: 4
     };
     var o = {
         ...obj, // a: 1, b: 2, c: 3, d: 4
     };
     console.log(o, obj, o === obj);

     var obj = {
         a: 1,
         b: 2,
         c: 3,
         d: [4, 5, 6]
     };
     var o = {
         ...obj, // a: 1, b: 2, c: 3, d: [4, 5, 6]
     };
     console.log(o, obj, o === obj);
     console.log(o.d, obj.d, o.d === obj.d); */


    // 对象的合并

    // var a = { a: 1 }
    // var b = { b: 2 }
    // var c = { c: 3 }
    // var d = { d: 4 }

    // var obj = {
    //     ...a,  // a: 1
    //     ...b,
    //     ...c,
    //     ...d,
    //     a: 10,
    // }
    // console.log(obj);








</script>

</html>